﻿//-----------------------------------------------------------------------
// <copyright file="AssemblyReference.cs" company="tuliprules.org">
//     Copyright (c) 2010 tuplelister, tuliprules.org.
// </copyright>
// <summary>This is the AssemblyReference class.</summary>
//-----------------------------------------------------------------------

namespace Tulip.Engine.Models.ClosedWorld
{
    /// <summary>
    /// Represents a .NET assembly reference.
    /// </summary>
    public class AssemblyReference : ElementBase
    {
        /////////// <summary>
        /////////// Name of the referenced assembly.
        /////////// </summary>
        ////////public string Name { get; set; }

        /// <summary>
        /// Gets or sets the major version of the referenced assembly.
        /// </summary>
        public int VersionMajor { get; set; }

        /// <summary>
        /// Gets or sets the minor version of the referenced assembly.
        /// </summary>
        public int VersionMinor { get; set; }

        /// <summary>
        /// Gets or sets the revision version of the referenced assembly.
        /// </summary>
        public int VersionRevision { get; set; }

        /// <summary>
        /// Gets or sets the build version of the referenced assembly.
        /// </summary>
        public int VersionBuild { get; set; }

        /// <summary>
        /// Gets or sets the culture of the referenced assembly.
        /// </summary>
        public string Culture { get; set; }

        /// <summary>
        /// Gets or sets the public key token of the referenced assembly.
        /// </summary>
        public string PublicKeyToken { get; set; } 

        /// <summary>
        /// Gets or sets the optional file path to assembly.
        /// </summary>
        public string FilePath { get; set; }
    }
}
